Creates a continuation Task
that will be started upon the completion of any Task in the provided set.
Namespace:
System.Threading.Tasks
Assembly:
System.Threading (in System.Threading.dll)
Syntax
Visual Basic (Declaration) |
---|
Public Function ContinueWhenAny(Of TAntecedentResult, TResult) ( _
tasks As Task(Of TAntecedentResult)(), _
continuationFunction As Func(Of Task(Of TAntecedentResult), TResult), _
cancellationToken As CancellationToken _
) As Task(Of TResult) |
C# |
---|
public Task<TResult> ContinueWhenAny<TAntecedentResult, TResult>(
Task<TAntecedentResult>[] tasks,
Func<Task<TAntecedentResult>, TResult> continuationFunction,
CancellationToken cancellationToken
)
|
Parameters
- tasks
- Type: array<
System.Threading.Tasks..::.Task<(Of <(TAntecedentResult>)>)
>[]()[]
The array of tasks from which to continue when one task completes.
- continuationFunction
- Type: System..::.Func<(Of <(Task<(Of <(TAntecedentResult>)>), TResult>)>)
The function delegate to execute when one task in the
tasks array completes.
- cancellationToken
- Type: System.Threading..::.CancellationToken
The CancellationToken
that will be assigned to the new continuation task.
Type Parameters
- TAntecedentResult
- The type of the result of the antecedent tasks.
- TResult
- The type of the result that is returned by the continuationFunction
delegate and associated with the created Task<(Of <(TResult>)>).
Return Value
The new continuation
Task<(Of <(TResult>)>).
Exceptions
Exception | Condition |
---|
System..::.ArgumentNullException | The exception that is thrown when the
tasks array is null. |
System..::.ArgumentNullException | The exception that is thrown when the
continuationFunction argument is null. |
System..::.ArgumentException | The exception that is thrown when the
tasks array contains a null value. |
System..::.ArgumentException | The exception that is thrown when the
tasks array is empty. |
System..::.ObjectDisposedException | The exception that is thrown when one
of the elements in the tasks array has been disposed. |
System..::.ObjectDisposedException | The provided CancellationToken
has already been disposed.
|
See Also